package _20250227;

import java.util.Arrays;
import java.util.List;

public class CountEven {

    /**
     * 1.给定一个包含整数的List<Integer>，使用 Stream 流计算列表中所有偶数的和。
      */
    public static void main(String[] args) {
        // 测试数据 1：包含多个偶数和奇数
        List<Integer> list1 = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
        // 测试数据 2：只有奇数
        List<Integer> list2 = Arrays.asList(1, 3, 5, 7, 9);
        // 测试数据 3：只有偶数
        List<Integer> list3 = Arrays.asList(2, 4, 6, 8, 10);
        // 测试数据 4：包含负数的情况，既有负偶数也有正偶数
        List<Integer> list4 = Arrays.asList(-2, 1, -4, 3, 6, -8, 5);
        // 测试数据 5：空列表
        List<Integer> list5 = Arrays.asList();
        //测试
        System.out.println(countEvenNumber(list1));
        System.out.println(countEvenNumber(list2));
        System.out.println(countEvenNumber(list3));
        System.out.println(countEvenNumber(list4));
        System.out.println(countEvenNumber(list5));


    }

    /**
     *
     * @param list 待求和的数
     * @return  返回求和
     */
    private static int countEvenNumber(List<Integer> list) {
        return   list.stream().filter(s -> s % 2 == 0).mapToInt(Integer::intValue).sum();
    }
}
